const selfCall=function(target,...args){
    const func=this;
    const a=Symbol('a')
    target[a]=func
    let res=target[a](...args)
    delete target[a]
    return res

}
Function.prototype.selfCall=selfCall
function abc(){
    console.log(this)
}
abc.selfCall({a:1,b:2},111)